const aiService = require("../service/ai/ai.service.js");
const astService = require("../service/ai/ast.service.js");
const util = require("../utils/util");

module.exports = {
  async codeGenerate(ctx) {
    const { message } = ctx.request.body;

    if (!message) {
      return util.fail(ctx, "请输入提示词");
    }
    try {
      const result = await aiService.codeGenerate(message);
      util.success(ctx, {
        // jsx 字段存储生成的 JSX 代码
        jsx: result[0],
        // config 字段存储生成的配置信息
        config: result[1],
      });
    } catch (error) {
      util.fail(ctx, error);
    }
  },

  // async astGenerate(ctx) {
  //   const { message } = ctx.request.body;

  //   if (!message) {
  //     return util.fail(ctx, "请输入提示词");
  //   }

  //   // 设置响应头以支持 SSE
  //   response.setHeader("Content-Type", "text/event-stream");
  //   response.setHeader("Cache-Control", "no-cache");
  //   response.setHeader("Connection", "keep-alive");

  //   try {
  //     // 调用 AST 服务生成 AST 并逐步返回
  //     await astService.astGenerate(message, response);
  //   } catch (error) {
  //     util.fail(ctx, error);
  //   }
  // },
};
